Various enterprise and network monitoring systems exist in the industry. However, such systems typically monitor load on a single device or similar indicators on multiple devices. For example, a server may be used on a network and monitors may be employed which monitor CPU usage, memory usage, and the like, on the network. Similarly, such indicia may be monitored on multiple servers.
There are many drawbacks to the above methods. First, it is often not realized that more computational resources are needed to handle the volume generated by specific applications, until usage of the resources increases beyond an acceptable level. Second, it is very difficult to pinpoint which application is the primary cause of the load on the server reaching unacceptable levels. Third, when an application comprises multiple steps or processes which initiate functions across multiple servers or computing devices, the above prior art methods lack the ability to track indicia based on application.
Thus, there is a need in the industry to provide a method of monitoring computational resources by an application, especially when the application is run across multiple servers or computing devices, and the application is one of many running on such servers or devices. There is also a need to forecast future computational requirements, based on increased usage of applications.